home *** CD-ROM | disk | FTP | other *** search
/ Java for 3D & VRML Worlds / Java for 3d and VRML Worlds.iso / examples / chap04 / RollingCD.wrl < prev    next >
Text File  |  1996-10-14  |  1KB  |  38 lines

  1. #VRML V2.0 utf8
  2.  
  3. #
  4. # a sample CD rolls 360 degrees around a random axis when you clicks it.
  5. #
  6.  
  7. DEF CD_TIME TimeSensor{
  8.         loop FALSE              # not repetitive
  9.         cycleInterval 3
  10. }
  11.  
  12. DEF CD_INTP OrientationInterpolator{
  13.         key [0, 0.25, 0.5, 0.75, 1.0]
  14.         # keyValue is set by Script.
  15. }
  16.  
  17. DEF CD_TRANSFORM Transform{
  18.         children[
  19.         # a place representing a CD
  20.         Shape{geometry Box{size 1 1 0.1}},
  21.         # sensor to start the time sensor.
  22.         DEF CD_TOUCH TouchSensor{}      
  23.         ]
  24. }
  25.  
  26. DEF CD_SCRIPT Script{
  27.         url "RollingCD.class"
  28.         eventIn SFTime touched
  29.         eventOut MFRotation setCDrollingAxis
  30.         eventOut SFTime setCDstartTime
  31. }       
  32.  
  33. ROUTE CD_TOUCH.touchTime TO CD_SCRIPT.touched
  34. ROUTE CD_SCRIPT.setCDrollingAxis TO CD_INTP.set_keyValue
  35. ROUTE CD_SCRIPT.setCDstartTime TO CD_TIME.set_startTime
  36. ROUTE CD_TIME.fraction_changed TO CD_INTP.set_fraction
  37. ROUTE CD_INTP.value_changed TO CD_TRANSFORM.set_rotation
  38.